home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Skunkware 5
/
Skunkware 5.iso
/
src
/
X11
/
xconq
/
config.h
< prev
next >
Wrap
C/C++ Source or Header
|
1995-05-09
|
7KB
|
224 lines
/* Copyright (c) 1987, 1988 Stanley T. Shebs, University of Utah. */
/* This program may be used, copied, modified, and redistributed freely */
/* for noncommercial purposes, so long as this notice remains intact. */
#pragma comment(exestr, "@(#) config.h 12.1 95/05/09 ")
/* RCS $Header: config.h,v 1.5 88/07/20 16:05:05 shebs Exp $ */
/* This file has several things that can be fiddled with; generally, */
/* the more interesting things to tweak are closer to the front of the file. */
/* Xconq is no longer wired to X; in fact, the specific graphics interface */
/* is unknown until link time, and does not affect compilation. */
/* Just a couple places where we care about machine type - but the main */
/* program does assume argc/argv interface, which is a problem for micros. */
#define UNIX
/* These are wishful thinking at the moment. */
/* #define ATARI */
/* #define MAC */
#define SCO_UNIX /* SCO UNIX 3.2.1 or later */
/* #define BSD */ /* Berkeley Unix and probably Ultrix too */
/* #define HPUX */ /* HP's mishmash of features */
/* #define SYSV */ /* Darth Vader's favorite Unix */
/* #define DGUX */ /* Data General is almost like BSD */
#ifdef SCO_UNIX
#define SELECT2 /* Can use select(2) to wait on several at once. */
#define USECBREAK /* Use crmode() for raw mode in curses. */
#endif
#ifdef BSD
#define SELECT2 /* Can use select(2) to wait on several at once. */
#define USECRMODE /* Use crmode() for raw mode in curses. */
#endif
#ifdef HPUX
#define SELECT2 /* Can use select(2) to wait on several at once. */
#define USECBREAK /* Use cbreak() for raw mode in curses. */
#endif
#ifdef SYSV
#define USECBREAK /* Use cbreak() for raw mode in curses. */
#endif
#ifdef DGUX
#define SELECT2 /* Can use select(2) to wait on several at once. */
#define USECRMODE /* Use crmode() for raw mode in curses. */
#endif /* DGUX */
#include <stdio.h>
#include <ctype.h>
#ifdef DGUX
#include <string.h> /* To get malloc declaration */
#endif /* DGUX */
/* This is where predefined maps/scenarios/periods/fonts can be found. */
#ifndef XCONQLIB
#define XCONQLIB "/u/games/lib/xconq"
#endif /* XCONQLIB */
/* The newsfile always lives in the lib directory. */
#define NEWSFILE "xconq.news"
/* This file is a list of mapfiles to exhibit in menus; it will always be */
/* in the lib directory. There are no automatic constructors for this */
/* file, since it should contain only well-tested files added after careful */
/* deliberation. */
#define MAPFILEFILE "mapfiles"
/* The name of the savefile. It will be put in the current directory. */
#define SAVEFILE "save.xconq"
/* This file gets the parameter listing for the period in use. */
/* It will also be created in the current directory. */
#define PARMSFILE "parms.xconq"
/* This file gets the game statistics when it's all over. */
/* It will also be created in the current directory. */
#define STATSFILE "stats.xconq"
/* This file gets a printout of the side's view. */
#define VIEWFILE "view.xconq"
/* This file gets a list of commands as they appear in the help window. */
#define CMDFILE "cmds.xconq"
/* Default random map sizes. Adjust these to taste - 60x60 is a moderate */
/* length game, 30x30 is short, 360x120 is L-O-N-G ! */
#define DEFAULTWIDTH 120
#define DEFAULTHEIGHT 120
/* Absolute maximum number of sides that can play. This limit can only be */
/* extended by changing the representation of views of players from bytes */
/* to something larger, thereby doubling (at least) space requirements. */
#define MAXSIDES 7
/* Absolute maximum number of kinds of units. (same restriction as above) */
#define MAXUTYPES 30
/* Maximum number of types of natural resources. This number can be set */
/* higher, in fact I think the only limitation is that there won't be */
/* enough distinct chars, but more rtypes means larger unit objects. */
#define MAXRTYPES 6
/* Maximum number of terrain types. Must be fewer than 256, but also */
/* limited by display capabilities. */
#define MAXTTYPES 20
/* Maximum number of random side names that can be defined. */
#define MAXSNAMES 200
/* Maximum number of random unit names that can be defined. */
#define MAXUNAMES 1000
/* The maximum number of mapfiles that can be in menus. (Not a limit on the */
/* total number of files that can exist, however.) */
#define MAXMAPMENU 100
/* The maximum number of mapfiles that can be loaded into a game (recursive */
/* loads are not performed and not counted). */
#define MAXLOADED 16
/* Default game length in turns. */
#define DEFAULTTURNS 1000
/* Number of messages displayed at one time. No upper limit I believe, */
/* but too many won't fit on the screen. The actual numbers of lines */
/* displayed can be changed by the player, subject to limitations on the */
/* screen space available. */
#define MAXNOTES 20
/* Default color of text and icons - 0 is for white on black, 1 */
/* is for black on white. Should be set appropriately for the most */
/* common monochrome display (color displays always do white on black). */
/* This is also settable by the player, so the default is just for */
/* convenience of the majority. */
#define BLACKONWHITE 0
/* When true, displays will use more graphics and less text. This can */
/* also be toggled by players individually. */
#define GRAPHICAL 0
/* The default fonts can be altered by users, so these are just hints. */
/* These options do not necessarily apply to non-X versions. */
#ifdef SCO_UNIX
#define TEXTFONT "8x13" /* works better for VGA */
#else
#define TEXTFONT "9x15"
#endif /* SCO_UNIX */
#define ICONFONT "xconq"
/* All names, phrases, and messages must be able to fit in statically */
/* allocated buffers of this size. */
#define BUFSIZE 120
/* If defined, a statistics file is written at the end of the game. */
/* The numbers therein are only for serious gamers, and the files can */
/* be embarassing clutter in your directory! */
#define STATISTICS
/* Initial limit on units and cities that can be active at one time. If */
/* growable option is enabled, will try to grow the array to hold more. */
#define INITMAXUNITS 1000
/* #define GROWABLE */
/* When this is enabled, machine players will be able to examine humans' */
/* units rather more closely than is possible in reverse. In particular, */
/* a machine will know just where the human units are, as well as their */
/* current attributes (like hit points). */
/* #define CHEAT */
/* When the eye needs to be drawn to a particular spot on the screen, */
/* the X interfaces will briefly flash an X. The time is set by this */
/* value, which is measured in milliseconds that the X is visible, and */
/* the flashing can be disabled entirely by supplying 0 here. */
#define DELAY 100
/* Some X11 servers die if too much is written between output flushes. */
/* This can be used with any graphics system with a similar problem; */
/* this option does not affect correctness, but may impact performance. */
/*#define STUPIDFLUSH*/
/* When allocating colors, the X interface will complain if the
* red, green or blue values for the color differ more than this
* value from what is expected.
*/
#define COLOR_DIFF 1000
#define MAX_COLORS 255
#define MIN_COLORS 10